package org.example.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.example.dao.entity.UserRoles;
import org.example.result.Result;

import java.math.BigInteger;


// RPC接口定义
public interface PermissionService extends IService<UserRoles> {
    // 绑定默认角色（普通用户）
    Result bindDefaultRole(BigInteger userId);

    // 查询用户角色码（返回role_code）
    String getUserRoleCode(BigInteger userId);

    // 超管调用：升级用户为管理员
    Result upgradeToAdmin(BigInteger targetUserId, BigInteger currentUserId);

    // 超管调用：降级用户为普通角色
    Result downgradeToUser(BigInteger targetUserId, BigInteger currentUserId);

    //  初始化调用：绑定超级管理员角色
    void bindSuperAdminRole(BigInteger userId);
}
